package org.jeecg.modules.param.pile.entity;

import java.io.Serializable;
import java.util.List;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: bike_pile
 * @Author: 月月鸟
 * @Date:   2021-05-19
 * @Version: V1.0
 */
@Data
@TableName("bike_pile")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="车桩对象", description="车桩对象")
public class BikePile implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private java.lang.String id;
	/**车桩编号*/
	@Excel(name = "车桩编号", width = 15)
    @ApiModelProperty(value = "车桩编号")
    private java.lang.String code;
	/**车桩名称 废弃*/
    @ApiModelProperty(value = "车桩编号")
    private java.lang.String name;

    @Excel(name = "音量大小", width = 15)
    @ApiModelProperty(value = "音量大小")
    private java.lang.Integer volumeSize;

	/**所属网点*/
    @ApiModelProperty(value = "所属网点")
    private java.lang.String stationId;

    /**网点名称*/
    @Excel(name = "所属网点", width = 15)
    @ApiModelProperty(value = "网点名称")
    @TableField(exist = false)
    private java.lang.String stationName;
    /**网点编号*/
    @Excel(name = "网点编号", width = 15)
    @ApiModelProperty(value = "网点编号")
    @TableField(exist = false)
    private java.lang.String stationCode;
    /**是否注册(默认否)*/
    @ApiModelProperty(value = "是否注册(默认否)")
    @Dict(dicCode = "yn")
    private String isRegister;
    /**四位验证码*/
    @ApiModelProperty(value = "四位验证码")
    private String checkCode;
	/**状态(1启用0禁用)*/
	@Excel(name = "状态", width = 15, dicCode = "mode_type")
	@Dict(dicCode = "mode_type")
    @ApiModelProperty(value = "状态(1启用0禁用) 判断是否常关")
    private java.lang.String status;

    @Excel(name = "是否锁定", width = 15, dicCode = "yn")
    @Dict(dicCode = "yn")
    @ApiModelProperty(value = "是否锁定(默认否)")
    private java.lang.String isLock;

	/**车锁状态(1开0关)*/
	@Excel(name = "车锁状态", width = 15, dicCode = "lock")
	@Dict(dicCode = "lock")
    @ApiModelProperty(value = "车锁状态(1开0关) 开就是无车，关就是有车")
    private java.lang.String lockStatus;
	/**车桩状态(1正常0异常)*/
    @Excel(name = "车桩状态", width = 15)
    @ApiModelProperty(value = "车桩状态(1正常0异常) ")
    private java.lang.String pileStatus;
	/**取车语音*/
	@Excel(name = "取车语音", width = 15,dicCode = "pickVoice")
    @ApiModelProperty(value = "取车语音")
    //@Dict(dicCode = "pickVoice")
    private java.lang.String pickVoice;
	/**还车语音*/
	@Excel(name = "还车语音", width = 15,dicCode = "returnVoice")
    @ApiModelProperty(value = "还车语音")
    //@Dict(dicCode = "returnVoice")
    private java.lang.String returnVoice;
	/**异常语音*/
	@Excel(name = "异常语音", width = 15,dicCode = "errorVoice")
    @ApiModelProperty(value = "异常语音")
    //@Dict(dicCode = "errorVoice")
    private java.lang.String errorVoice;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
	/**创建时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private java.util.Date createTime;
	/**修改人*/
    @ApiModelProperty(value = "修改人")
    private java.lang.String updateBy;
	/**修改时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "修改时间")
    private java.util.Date updateTime;
	/**备注*/
	@Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private java.lang.String memo;
    /**最新版本号*/
    @Excel(name = "最新版本号", width = 15)
    @ApiModelProperty(value = "最新版本号")
    private java.lang.String versionCode;
    /**车辆编号*/
    @ApiModelProperty(value = "车辆编号")
    @TableField(exist = false)
    private java.lang.String vehicleCode;
    /**判断是否故障 0 正常  1 故障 2 锁故障*/
    @ApiModelProperty(value = "判断是否故障 0 正常  1 故障 2 锁故障")
    @TableField(exist = false)
    private int isFault;
    /**判断是否断线*/
    @ApiModelProperty(value = "判断是否断线  1 无 0 有")
    @TableField(exist = false)
    private int isBreakLine;
    /**网点ID数组*/
    @ApiModelProperty(value = "所属网点ID数组 不用管我")
    @TableField(exist = false)
    private String[] stationArrayId;
    /**网点ID数组*/
    @ApiModelProperty(value = "所属网点ID数组 不用管我")
    @TableField(exist = false)
    private List<String> stationArray;
}
